package cn.itcast.day13.demo01;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/*
    java.util.Iterator接口：迭代器（对集合进行遍历）
    两个常用方法：
        boolean hasNext（）如果仍有元素可以迭代，则返回true
            判断集合中还有没有下一个元素，有则返回true，没有则返回false
        E next（）返回迭代的下一个元素
            取出集合中的下一个元素
    Iterator迭代器，是一个接口，我们无法直接使用，需要使用Iterator接口的实现类对象，获取实现类的方式比较特殊
    Collection接口中有一个方法，叫Iterator（），这个方法返回的就是迭代器的实现类对象
        Iterator<E> iterator() 返回在此 collection的元素上进行迭代的迭代器
 */
public class Demo01Iterator {

    public static void main(String[] args) {

        Collection<String> coll = new ArrayList<>();//1.
        coll.add("韩信");
        coll.add("赵云");
        coll.add("张飞");
        coll.add("马超");

        Iterator<String> it = coll.iterator();//2.

        while (it.hasNext()){//hasNext()
            System.out.println(it.next());//next()
        }
        /*System.out.println(b1);
        String s1 = it.next();
        System.out.println(s1);
        String s2 = it.next();
        System.out.println(s2);
        String s3 = it.next();
        System.out.println(s3);
        String s4 = it.next();
        System.out.println(s4);*/

    }
}
